機械学習実習 2回課題
第6週 クラス分類のおためし (演習の環境と利用するデータ説明1.7節と)
✅2. 演習の環境と利用するデータ
dataInUse.ipynb の指示通りに実行
✅3. 教科書の1.7節: 最初のアプリケーション:アイリスのクラス分類
最後まで目を通す&実行する.
レポートの課題1
✅4. 来週までの宿題
第7週 k-近傍法によるクラス分類(2.3.2節)と回帰(2.3.2.3節)
2.3.2いっぱいまで
✅2.3.1節のコードを実行し, サンプルデータを理解する
✅2.3.2節 k-最近傍法を実行していく.
✅2.3.2.3節 再び回帰がでてくる.回帰とは何かを思い出しながら,実行していく.
✅2.3.2.4節と2.3.2.5節は,機械学習に強い興味がある人だけ読めばよし.(普通の人は飛ばす)
レポート課題2に取り組む
来週までの宿題
教科書の2.3.3.1節 線形モデルによる回帰を読んでおく
第8週 線形モデルによる回帰とクラス分類(2.3.3節)
2.3.3
2.3.3.2 節 線形回帰(通常最小二乗法)の説明を聞く
2.3.3.1節と2.3.3.2節を実行
wave データは,p.32に初出
2.3.3.3節,2.3.3.4節を読む
alphaの値はまずは気にしない.実行する事を主眼とする
気になる人は,読み込む
2.3.3.4節,2.3.3.5節は飛ばします.
課題3にとりくむ
ここまで出来れば,あとは独力で2.3.4節ナイーブベーズや2.3.5節決定木も実行可能.
余裕のある人は読んで実行
第9週、第10週 レポート作成時間
hr.icon
レポート思考
レベル クラスメイトが理解できるレベル
✅課題1
✅(1) 訓練データとテストデータに分ける必要がある理由を説明せよ.
学習させた機械学習モデルが汎化できているか確認するために、学習を目的とした訓練データで学習させた後、テストデータでモデルを確認する必要があるから。
✅(2) 「精度」(accuracy)はモデルを評価する指標の一つである。
モデルがどのくらいうまく機能しているか?
スコアどうやってだすの?
訓練セットと訓練ラベル
テストセット
学習モデルで予想したラベル 正解ラベル
✅b) 精度以外の指標に何があるかを調べ、数式を使って説明せよ。
✅c) 多くの指標が必要となる理由を説明せよ。
✅(3) scikit-learnでは,データを大文字のX, ラベルを小文字のyで表記する.
✅b)それぞれ簡単に説明せよ.
どうしてデータは大文字で表記し,
ラベルは小文字で表記するのか.
✅課題2
✅(1)クラス分類問題と回帰問題の違いを説明せよ.
✅(2) k-近傍法によるクラス分類を,図を用いて説明せよ
✅(3) p.38を参考に,irisデータセットをk-近傍法で分類するコードを書き,テストセットに対する精度を求めよ.
(4) 余裕のある人への追加課題
cancer データセット(p.34)を用いて,がんの良性,悪性判定を行うコードを書き, テストセットに対する精度を求めよ.
データ扱いやすそうなら(3)の流用で良さそう
from skleran.datasets import load_breast_cancer
retrunX_yできたらよき
✅課題3
✅(1) 線形モデルによる回帰問題を,図を用いて説明せよ.
✅(2) リッジ回帰やLasso回帰は,過剰適合を防ぐ事を目的に導入している(p.50)過剰適合について説明せよ
✅(3) p.48を参考に,
irisのデータの'petal width (cm)'を他の3つのデータ'sepal length (cm)', 'sepal width (cm)', 'petal length (cm)' から推定する(回帰させる) コードを書け.
そして,訓練セットスコア,テストセットスコアを求めよ.
なお,irisデータの中身は, iris_data.keys()で把握せよ.
参考
[機械学習 iris データセットを用いて scikit-learn の様々な分類アルゴリズムを試してみた - Qiita]